package com.mhh.selary.backend.api.api;

import com.mhh.selary.backend.dto.IdDTO;
import com.mhh.selary.backend.dto.api.ApiHttpCopyDTO;
import com.mhh.selary.backend.dto.api.ApiHttpInfo;
import com.mhh.selary.backend.dto.api.ApiHttpMoveDTO;
import com.mhh.selary.backend.dto.api.ApiHttpRunDTO;
import com.mhh.selary.backend.dto.api.ApiHttpRunResultDTO;
import com.mhh.selary.backend.dto.api.ApiHttpSaveDTO;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * ISelaryApiHttpService
 *
 * @author 人工智能
 * @date 2020-09-14 15:43:19
 */
public interface ISelaryApiHttpService {

    /**
     * 查询某个组的api接口列表
     *
     * @param groupId
     * @return
     */
    List<ApiHttpInfo> listByGroup(Long groupId);

    /**
     * 保存api接口配置
     *
     * @param dto
     */
    void saveApiHttp(ApiHttpSaveDTO dto);

    /**
     * 删除api接口配置
     *
     * @param dto
     */
    void delApiHttp(@RequestBody IdDTO dto);

    /**
     * 获取接口详情信息
     *
     * @param apiId
     * @return
     */
    ApiHttpSaveDTO detail(Long apiId);

    /**
     * 复制api接口
     *
     * @param dto
     */
    void copyApiHttp(ApiHttpCopyDTO dto);

    /**
     * 移动接口
     *
     * @param dto
     */
    void moveApiHttp(ApiHttpMoveDTO dto);

    /**
     * 运行接口
     *
     * @param dto
     * @return
     */
    ApiHttpRunResultDTO run(ApiHttpRunDTO dto);

}
